import { IsString, IsNumber, IsArray, IsOptional } from 'class-validator';

export class GenerateItineraryDto {
  @IsString()
  destination: string;

  @IsNumber()
  durationDays: number;

  @IsString()
  travelStyle: string;

  @IsString()
  budgetLevel: string;

  @IsArray()
  @IsOptional()
  interests: string[];
}

export class PointOfInterestDto {
  name: string;
  latitude: number;
  longitude: number;
  description: string;
  category: string;
  visitDuration: number;
}

export class DayPlanDto {
  day: number;
  points: PointOfInterestDto[];
  routePolyline: string;
}

export class ItineraryResponseDto {
  id: string;
  destination: string;
  durationDays: number;
  days: DayPlanDto[];
}
